package com.ruoyi.partybuilding.domain.vo;

import com.easy.query.core.annotation.Column;
import com.easy.query.core.annotation.ColumnIgnore;
import com.easy.query.core.annotation.EasyWhereCondition;
import com.easy.query.core.annotation.Navigate;
import com.easy.query.core.enums.RelationTypeEnum;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.partybuilding.common.EQuery.IDeptEntity;
import com.ruoyi.partybuilding.domain.Org;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
// extends SysDept
@Data
public class DeptOrgVo extends Org implements IDeptEntity {


    @ApiModelProperty("vo组织人数")
    Long statMember;

    @ApiModelProperty(value = "vo班子人数")
    Long statTeamPerson;
    /** 部门,编辑时忽略
     *
     */
    @ApiModelProperty(value = "部门,编辑时忽略")
    @Navigate(value = RelationTypeEnum.OneToOne,targetProperty = "deptId", selfProperty = "deptId")
    private SysDept dept;

    /** 部门ID */
    //@Column(primaryKey = true,generatedKey = true)
    @EasyWhereCondition(type = EasyWhereCondition.Condition.EQUAL)
    private Long deptId;

    /** 父部门ID */
    private Long parentId;

    /** 祖级列表 */
    @ApiModelProperty(value = "祖级列表")
    private String ancestors;

    /** 部门名称 */
    @EasyWhereCondition
    @Excel(name = "组织名称",sort = 1)
    private String deptName;

    /** 显示顺序 */
    private Integer orderNum;

    /** 负责人 */
    private String leader;

    /** 联系电话 */
    private String phone;

    /** 邮箱 */
    private String email;

    /** 部门状态:0正常,1停用 */
    @ApiModelProperty(value = "部门状态:0正常,1停用")
    private String status;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

}
